Skip to content

style: 完善主题外观设置#57

Open
0xxb wants to merge 11 commits intoxintaofei:mainfrom
0xxb:refactor-styles
Open

style: 完善主题外观设置#57
0xxb wants to merge 11 commits intoxintaofei:mainfrom
0xxb:refactor-styles

Conversation

@0xxb
Copy link
Copy Markdown

@0xxb 0xxb commented Apr 3, 2026

No description provided.

0xxb and others added 11 commits April 2, 2026 18:36
Defines AccentColor, InterfaceDensity, TerminalScheme, CodeThemeLight, CodeThemeDark types and AppearanceSettings interface, along with all presets (accent colors, font options, density values, terminal color schemes, code theme options) and DEFAULT_APPEARANCE.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…jection

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replaces the minimal theme-only selector with a full settings panel:
Theme (mode + accent color), Fonts (UI/code font + size), Editor (code
highlight themes), Terminal (color scheme), and Accessibility (density +
reduce motion). Consumes useAppearance hook and constants from Tasks 1-3.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tings

Replace hardcoded DARK_THEME/LIGHT_THEME constants and isDarkMode() with dynamic lookup via TERMINAL_SCHEMES[scheme] driven by the appearance context, so font size, font family, and color scheme all react to user settings changes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tings

Replace hardcoded "github-light"/"github-dark" shiki themes with configurable
values from the appearance context, updating caches to key by theme as well.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix react-hooks/set-state-in-effect by using initializer function
- Fix @typescript-eslint/no-explicit-any with proper type assertion
- Fix prettier formatting issues

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Root font-family now uses var(--font-sans) instead of hardcoded Inter
- Root font-size now uses var(--font-size-base) instead of hardcoded 16px
- Root line-height now uses var(--density-line-height)
- Default uiFontSize changed to 16 to match previous root default
- Removed custom font input option from font selects

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…all locales

Previous changes overwrote existing translations with English fallbacks.
Restores original translations for 8 locales (ja, ko, zh-TW, es, de, fr, pt, ar),
adds localized translations for all new appearance setting keys, and removes
the unused customFontPlaceholder key.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant